<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.prime.com.tr/ui">

<!-- 
		Replace path to template, title, header and body
		with actual data.
	 -->
<ui:composition template="../template/layout.xhtml">
	<ui:define name="titulo">#{produtoControle.tituloPagina}</ui:define>

	<ui:define name="frConteudo">
		<h:form id="form">
			<h:outputText escape="false" value="#{msg.geralListaVazia}"
				rendered="#{produtoControle.listaInfos.rowCount == 0}" />

			<p:dataTable id="tabela" var="bean"
				value="#{produtoControle.listaInfos}" paginator="true" rows="5"
				rendered="#{produtoControle.listaInfos.rowCount > 0}">

				<f:facet name="header">
						<h:outputLabel value="#{produtoControle.tituloPagina}" /> 
					</f:facet>

				<f:facet name="footer">
				</f:facet>

				<p:column sortBy="#{bean.produto}" filterBy="#{bean.produto}">
					<f:facet name="header">
						<h:outputText value="#{msg.produto}" />
					</f:facet>
					<h:outputText value="#{bean.produto}" />
				</p:column>

				<p:column sortBy="#{bean.tipoProduto.tipo}" filterBy="#{bean.tipoProduto.tipo}">
					<f:facet name="header">
						<h:outputText value="#{msg.tipoProduto}" />
					</f:facet>
					<h:outputText value="#{bean.tipoProduto.tipo}" />
				</p:column>

				<p:column sortBy="#{bean.modelo.marca.marca}" filterBy="#{bean.modelo.marca.marca}">
					<f:facet name="header">
						<h:outputText value="#{msg.marca}" />
					</f:facet>
					<h:outputText value="#{bean.modelo.marca.marca}" />
				</p:column>

				<p:column sortBy="#{bean.modelo.modelo}" filterBy="#{bean.modelo.modelo}">
					<f:facet name="header">
						<h:outputText value="#{msg.modelo}" />
					</f:facet>
					<h:outputText value="#{bean.modelo.modelo}" />
				</p:column>

				<p:column>
					<h:panelGroup>
						<p:commandLink update="form:display"
							oncomplete="beanDialog.show()">
							<h:graphicImage library="imagens" name="detalhes20.png"
								style="border:0" />
							<h:outputText value="#{msg.geralLinkDetalhes}" />
							<f:setPropertyActionListener
								target="#{produtoControle.infoBean}" value="#{bean}" />
						</p:commandLink>
						<h:outputText value="  " />
						<h:commandLink action="#{produtoControle.preparaEditar}">
							<h:graphicImage library="imagens" name="editar16a.png"
								style="border:0" />
							<h:outputText value="#{msg.geralLinkAlterar}" />
							<f:setPropertyActionListener
								target="#{produtoControle.infoBean}" value="#{bean}" />
						</h:commandLink>
						<h:outputText value="  " />
						<h:commandLink action="#{produtoControle.preparaEliminar}">
							<h:graphicImage library="imagens" name="deletar16a.png"
								style="border:0" />
							<h:outputText value="#{msg.geralLinkEliminar}" />
							<f:setPropertyActionListener
								target="#{produtoControle.infoBean}" value="#{bean}" />
						</h:commandLink>
					</h:panelGroup>
				</p:column>

			</p:dataTable>

			<!-- area de exportação -->
			<h:panelGrid columns="2"
				rendered="#{produtoControle.listaInfos.rowCount > 0}">
				<p:panel header="Exportar tudo">
					<h:commandLink>
						<h:graphicImage library="imagens" name="excel.png"
							style="border:0" />
						<p:dataExporter type="xls" target="tabela"
							fileName="#{produtoControle.tituloPagina}" excludeColumns="4" />
					</h:commandLink>

					<h:commandLink>
						<h:graphicImage library="imagens" name="pdf.png" style="border:0" />
						<p:dataExporter type="pdf" target="tabela"
							fileName="#{produtoControle.tituloPagina}" excludeColumns="4" />
					</h:commandLink>

					<h:commandLink>
						<h:graphicImage library="imagens" name="excel.png"
							style="border:0" />
						<p:dataExporter type="csv" target="tabela"
							fileName="#{produtoControle.tituloPagina}" excludeColumns="4" />
					</h:commandLink>

					<h:commandLink>
						<h:graphicImage library="imagens" name="pdf.png" style="border:0" />
						<p:dataExporter type="xml" target="tabela"
							fileName="#{produtoControle.tituloPagina}" excludeColumns="4" />
					</h:commandLink>
				</p:panel>

				<p:panel header="Exportar página">
					<h:commandLink>
						<h:graphicImage library="imagens" name="excel.png"
							style="border:0" />
						<p:dataExporter type="xls" target="tabela"
							fileName="#{produtoControle.tituloPagina}" pageOnly="true"
							excludeColumns="4" />
					</h:commandLink>

					<h:commandLink>
						<h:graphicImage library="imagens" name="pdf.png" style="border:0" />
						<p:dataExporter type="pdf" target="tabela"
							fileName="#{produtoControle.tituloPagina}" pageOnly="true"
							excludeColumns="4" />
					</h:commandLink>

					<h:commandLink>
						<h:graphicImage library="imagens" name="excel.png"
							style="border:0" />
						<p:dataExporter type="csv" target="tabela"
							fileName="#{produtoControle.tituloPagina}" pageOnly="true"
							excludeColumns="4" />
					</h:commandLink>

					<h:commandLink>
						<h:graphicImage library="imagens" name="pdf.png" style="border:0" />
						<p:dataExporter type="xml" target="tabela"
							fileName="#{produtoControle.tituloPagina}" pageOnly="true"
							excludeColumns="4" />
					</h:commandLink>
				</p:panel>
			</h:panelGrid>

			<br />

			<h:panelGroup>
				<h:commandLink action="#{produtoControle.preparaAdicionar}"
					immediate="true">
					<h:graphicImage library="imagens" name="adicionar16a.png"
						style="border:0" />
					<h:outputText value="#{msg.geralLinkNovoRegisto}" />
					<f:setPropertyActionListener target="#{produtoControle.infoBean}"
						value="#{bean}" />
				</h:commandLink>
			</h:panelGroup>

			<!-- area de detalhes width="200"  -->
			<p:dialog header="#{msg.produtoTituloDetalhes}"
				widgetVar="beanDialog" resizable="false" showEffect="explode"
				hideEffect="explode">

				<h:panelGrid id="display" columns="2" cellpadding="0" border="1">
					<h:outputText value="#{msg.produto}:" />
					<h:outputLabel value="#{produtoControle.infoBean.produto}" />

					<h:outputText value="#{msg.tipoProduto}:" />
					<h:outputLabel value="#{bean.tipoProduto.tipo}" />

					<h:outputText value="#{msg.marca}:" />
					<h:outputLabel value="#{bean.modelo.marca.marca}" />

					<h:outputText value="#{msg.modelo}:" />
					<h:outputLabel value="#{bean.modelo.modelo}" />
				</h:panelGrid>
			</p:dialog>
			<!-- fim da area de detalhes -->
		</h:form>
	</ui:define>
</ui:composition>
</html>